

-- 需要用到的value
local voucherId=ARGV[1]
local userId=ARGV[2]
local orderId=ARGV[3]


-- 需要用到的key

local stockKey='seckill:stock:' .. voucherId
local orderKey='seckill:order:' .. voucherId
if(tonumber(redis.call('get',stockKey))<=0) then
    return 1
end

if(redis.call('sismember',orderKey,userId)==1) then
    return 2
end

-- 扣减库存

redis.call('incrby',stockKey,-1)

-- 新增订单

redis.call('sadd',orderKey,userId)

--发送至消息队列

return 0